#if !defined(FAKE_D3D11_TEXTURE2D_H)
#define FAKE_D3D11_TEXTURE2D_H

#include "Fakes/FakeD3D11Resource.h"
#include <rt/Exceptions/NotImplementedException.h>

class FakeD3D11Texture2D : public ID3D11Texture2D
{
public:
	FakeD3D11Texture2D()
		: Resource(),
		GetDescCalled(false),
		GetDescFakeResult()
	{
	}
	bool GetDescCalled;
	D3D11_TEXTURE2D_DESC GetDescFakeResult;

	CONTAIN_RESOURCE(Resource)
	virtual void STDMETHODCALLTYPE GetDesc(D3D11_TEXTURE2D_DESC *pDesc)
	{
		GetDescCalled = true;
		*pDesc = GetDescFakeResult;
	}
};

#endif
